<script lang="ts" setup>
import { useUserStore } from "@/pinia/stores/user"
// 获取语言配置
import { useSettingsStore } from "@/pinia/stores/settings"
import { useGreyAndColorWeakness } from "@@/composables/useGreyAndColorWeakness"
import { usePany } from "@@/composables/usePany"
import { useTheme } from "@@/composables/useTheme"

import ru from "element-plus/es/locale/lang/ru" // Element Plus 俄文包
import zh from "element-plus/es/locale/lang/zh-cn" // Element Plus 中文包

// import { login, logout, destroy } from "@@/utils/im"
import { TUILogin } from "@tencentcloud/tui-core"
import { framework } from "../TUIKit/adapter-vue"
import { genTestUserSig, TUIChatKit } from "../TUIKit/index"


const userStore = useUserStore();

const { userSig } = genTestUserSig({
  SDKAppID: userStore.IM_SDKAppID,
  secretKey: userStore.IM_secretKey,
  userID: userStore.PERFIX + userStore.mobile
})
userStore.setUserSig(userSig);


const { initTheme } = useTheme()
const { initGreyAndColorWeakness } = useGreyAndColorWeakness()
// const { initStarNotification, initStoreNotification } = usePany()
// 获取设置
const settingsStore = useSettingsStore()

// 使用 storeToRefs 将提取的属性保持其响应性
onMounted(() => [
  TUILogin.login({
    SDKAppID: userStore.IM_SDKAppID,
    userID: userStore.PERFIX + userStore.mobile,
    // UserSig 是用户登录即时通信 IM 的密码，其本质是对 UserID 等信息加密后得到的密文。
    // 该方法仅适合本地跑通 Demo 和功能调试，详情请参见 https://cloud.tencent.com/document/product/269/32688
    userSig,
    // 如果您需要发送图片、语音、视频、文件等富媒体消息，请设置为 true
    useUploadPlugin: true,
    // 本地审核可识别、处理不安全、不适宜的内容，为您的产品体验和业务安全保驾护航
    // 此功能为增值服务，请参考：https://cloud.tencent.com/document/product/269/79139
    // 如果您已购买内容审核服务，开启此功能请设置为 true
    useProfanityFilterPlugin: false,
    framework // 当前开发使用框架 vue2 / vue3
  }).then(() => {
  })

])

onUnmounted(() => {
  TUILogin.logout().then(() => {
    console.log("=============123123123==============")
  })
})

// 初始化主题
initTheme()
// 初始化灰色模式和色弱模式
initGreyAndColorWeakness()
// 初始化通知  可以加些全局提示
// initStarNotification()
// initStoreNotification()
</script>

<template>
  <el-config-provider :locale="settingsStore.locale === 'zh' ? zh : ru">
    <router-view />
  </el-config-provider>
</template>
